XML Structure for Import Files

The Import feature allows transactions and distributor companies to be loaded directly into the system without extensive data entry.  The import files are in XML format, which can be created from a simple form, or exported from an entirely different system.

The formatting and structure of the input XML must be precise, so sample files are included below, with a detailed breakdown of all requirements.

Transaction Import XML Sample

Transaction Import Template

The sample XML below is available in the file linked above. All black text must be replaced by the appropriate policy details, except where instructed otherwise.

Note: Some XML editors may display the code using different color markers.  Refer to the sample below to resolve any discrepancies.

The structure should only be changed where the instructions advise that sections should be copied and pasted to insert repetitive details.  Links to the instructions for each section are included at the far right, and each set of instructions has a link to return to the same section in the code.

<?xml version="1.0"?>

<Policies>

  <Policy>

     <PolicyInfo xmlns="http://oceanwide.bridge.com">

        <StandardInfo>

           <PolicyHeader>

              <PolicyIdentifiers>

                 <PolicyNumber>Number</PolicyNumber>

                 <MasterCover Code="Code"/>

              </PolicyIdentifiers>

              <PolicyTermIdentifiers>

                 <PolicyTermNumber>Number</PolicyTermNumber>

              </PolicyTermIdentifiers>

              <PolicyTransactionIdentifiers>

                 <TransactionEffectiveCoveragePeriod>

                    <EffectiveDate>Date</EffectiveDate>

                    <ValidUntilDate>Date</ValidUntilDate>

                    <BoundDate>Date</BoundDate>

                 </TransactionEffectiveCoveragePeriod>

                 <TransactionType Code="Code" />

                 <TransactionStatus Code="Bound" />

              </PolicyTransactionIdentifiers>

           </PolicyHeader>

           <Distributors>

              <Distributor Code="Code"/>

           </Distributors>

           <AssuredCompanies>

              <AssuredCompany Code="Code">

                 <PartyInfo>

                    <AddressInfo>

                       <Address>Street Address</Address>

                       <City>City</City>

                       <State Code="Code" />

                       <Country Code="Code" />

                       <Zip>Zip</Zip>

                    </AddressInfo>

                    <CommunicationInfo>

                       <Phone>Number</Phone>

                       <Fax>Number</Fax>

                       <Website>Website</Website>

                    </CommunicationInfo>

                 </PartyInfo>

                 <CompanyInfo>

                    <CompanyName>Name</CompanyName>

                 </CompanyInfo>

              </AssuredCompany>

           </AssuredCompanies>

        </StandardInfo>

        <CustomInfo>

           <Fields>

              <Field Code="Code" Value="Value" Text="Text" />

              <Field Code="Code" Value="Value" Text="Text" />

              <Field Code="Code" Value="Value" Text="Text" />

           </Fields>

           <Arrays>

              <Array Code="Code" Action="Overwrite">

                 <ArrayItem Code="Code">

                    <ParentArrayItem Code="Code" />

                    <Field Code="Code" Value="Value" Text="Text" />

                    <Field Code="Code" Value="Value" Text="Text" />

                    <Field Code="Code" Value="Value" Text="Text" />

                 </ArrayItem>

              </Array>

           </Arrays>

        </CustomInfo>

     </PolicyInfo>

     <CoverageInfo>

        <QuoteOptionDefinition Code="Code" />

        <InsuredValue>

           <Amount>Amount</Amount>

        </InsuredValue>

        <GeneralInsuringConditions>

           <Text>Text</Text>

           <Sequence>Number</Sequence>

        </GeneralInsuringConditions>

        <CurrencyISO>Code</CurrencyISO>

        <Coverages>

           <Coverage>

              <CoverageType Code="Code" />

              <Premiums>

                 <Premium>

                    <ProratedAmount>

                       <Amount>Amount</Amount>

                    </ProratedAmount>

                    <TermAmount>

                       <Amount>Amount</Amount>

                    </TermAmount>

                    <AnnualAmount>

                       <Amount>Amount</Amount>

                    </AnnualAmount>

                    <NetChangeAmount>

                       <Amount>Amount</Amount>

                    </NetChangeAmount>

                    <Taxes>

                       <Tax Code="Code">

                          <Amount>

                             <Amount>Amount</Amount>

                          </Amount>

                       </Tax>

                    </Taxes>

                    <Commissions>

                       <Commission>

                          <Distributor Code="Code"  Id="Id"/>

                          <Amount>

                             <Amount>Amount</Amount>

                          </Amount>

                       </Commission>

                    </Commissions>

                 </Premium>

              </Premiums>

              <Limits>

                 <Limit>

                    <LimitType Code="Code" />

                    <Description>Description</Description>

                    <LimitAmount>

                       <Amount>Amount</Amount>

                    </LimitAmount>

                 </Limit>

              </Limits>

              <Deductibles>

                 <Deductible>

                    <DeductibleType Code="Code" />

                    <Description>Description</Description>

                    <DeductibleAmount>

                       <Amount>Amount</Amount>

                    </DeductibleAmount>

                 </Deductible>

              </Deductibles>

           </Coverage>

        </Coverages>

     </CoverageInfo>

  </Policy>

</Policies>

Transaction Import XML Details

Policies  
  The Policies section, including both its opening and closing tags <Policies> </Policies>, contains all of the information for one transaction. The entire section can be repeated as many times as necessary to upload multiple transactions.
PolicyIdentifiers  
  • PolicyNumber
(required) Insert the unique policy number to represent the policy for its entire lifespan or at least for the first term (depending on master cover settings).
  • MasterCover

(required) Insert the Code of the master cover under which the policy is to be created.

PolicyTermIdentifiers  
 

The PolicyTermIdentifiers section, including both its opening and closing tags <PolicyTermIdentifiers></PolicyTermIdentifiers>, contains the information to define a Renewal transaction. This section can be omitted for New Business transactions or, if left in, the details must match the policy details provided in other sections.

  • PolicyTermNumber
(required) Insert the policy number for the renewal. If the renewal should have its own policy number, the number should be unique. If the policy number for the first term should be maintained, include that number here.
PolicyTransactionIdentifiers  
  • EffectiveDate
(required) Insert the date that the transaction comes into effect. For Renewal transactions, the effective date must be the day after the last day of the previous term.  The date must be in long format as follows:  2011-01-01T01:00:00-05:00. The time element must be included, but is ignored.
  • ValidUntilDate

(required) Insert the date on which the transaction ends.  The date must be in long format as follows:   2011-01-01T01:00:00-05:00.  The time element must be included, but is ignored.

  • BoundDate
Insert the date on which the transaction was bound. The date must be in long format as follows: 2011-01-01T01:00:00-05:00.
  • TransactionType

(required) New Business, Renewal, Adjustment, Endorsement, and ERP Endorsement transactions are supported. Code must be "NewBusiness", "Renewal", "Adjustment", "Endorsement", or "ERPEndorsement".

  • TransactionStatus

(required) Currently only Bound policies are supported. Code must be "Bound".

Distributors  
  • Distributor

(required) Insert the Code of the distributor company to be attached to the policy.

 

The policy term Distributor can be updated for Bound Renewal, Endorsement, and Adjustment transactions by using the new distributor's Code. The new distributor must be associated to the appropriate master cover prior to import, or the import will result in an error.

AssuredCompanies  
  • AssuredCompany
(required) Insert the Code of the client record. If the client record already exists in the system, the record is updated. If the client record does not exist, a new client record is created.
  • Address
(optional) Insert the street address for the client.
  • City
(optional) Insert the city name for the client.
  • State
(optional) Insert the state Code for the client.
  • Country
(optional) Insert the country Code for the client.
  • Zip
(optional) Insert the Zip Code or Postal Code for the client.
  • Phone
(optional) Insert the phone number for the client.
  • Fax
(optional) Insert the fax number for the client.
  • Website
(optional) Insert the URL for the client's website.
  • CompanyName
(required) Insert the name of the client company or individual.
Fields  
  • Field

Insert the Code of the field, and the Value to be assigned to that field.

Repeat this line as many times as required to fill in all necessary fields in the workflow (not including fields within grids, see below).  Any fields to be left blank in the policy can be omitted from this section.

The format of the Value data depends on the type of field.

 
  • Text Box, Textbox (Decimal), Textbox (Email), and Textbox (Integer):  Insert the value suitable to the field type.
  • Text Area:  Insert the text, including any line breaks.
  • Rich Text:  Insert the text, with all formatting represented by text codes.

    Example:  "&lt;b&gt;This is bold text&lt;/b&gt;"      

  • Radio Buttons and Drop Down:  Insert the Code for the option list item to be selected.
  • Checkbox:  If the box is to be checked, insert "true".  If it should be unchecked, omit it from the Fields section entirely.
  • Date Picker:  Insert the date in long format as follows:  2011-01-01T01:00:00-05:00.  The time element must be included, but is ignored.
  • Label:  Label content is defined in the workflow.  Labels should not be included in the Fields section.
  • Checkbox Group, Include Exclude List, and Multi Select:  These field types are defined in the Arrays section below.
  If the target field is a combo box control, the optional Text attribute can be provided.  While the Value attribute is the saved value of the field, the Text attribute determines what will be displayed in the field.  If the Text attribute is not provided, the Value attribute will be displayed by default.
Arrays  
 

Arrays are used for two purposes, building grids, and populating stand-alone fields with multiple selections such as Checkbox Groups, Include Exclude Lists, and Multi Selects.

The Array section, including its opening and closing tags <Array></Array>, must be repeated for each grid or multi-option field to be populated.

Notes: It is currently not possible to import multi-selection fields within grids. Such fields must be populated manually after import.

When a grid is configured with a Business Key Field, the Business Key field value is saved in the Code attribute.

  • Array (field)
Insert the Code of the Checkbox Group, Include Exclude List, or Multi Select.
  • ArrayItem (field)

The ArrayItem section, including its opening and closing tags <ArrayItem></ArrayItem>, must be repeated for each selected option in the field.  Options that are not selected should not be listed.

The ExternalCode should not be included when importing a field.

  • Field (field)
Within each ArrayItem section should be one Field entry. Enter "Item" as the Code, and for Value insert the Code for the option list item to be selected.
  • Array (grid)

Insert the Code of the grid.

When updating a policy, the Action="Overwrite" option can be used to clear all data from a grid before importing new data.

  • ArrayItem (grid)
The ArrayItem section, including its opening and closing tags <ArrayItem></ArrayItem>, must be repeated for each row of data in the grid.
  A unique Code can be defined for each row in the grid. This allows child grid data to be assigned to the current row, and allows individual rows to be updated with future imports by referencing the provided code. If a matching code is not found, the row is added to the grid as a new row.
 

Note: If a Business Key has been configured for the grid, the value of the Business Key is used as the grid row Code. Because the Business Key of a child grid is not required to be unique, the grid row GUID must be used instead of the Code to uniquely identify each grid row.

  • ParentArrayItem (grid)

This line identifies the current array item as being a child entry associated to a specific row in a parent grid.

Insert the Code of the parent ArrayItem.

This line should only be added once per ArrayItem.

  • Field (grid)

Insert the Code of the field, and the Value to be assigned to that field.

Repeat this line as many times as required to fill in all necessary fields in the current row of the grid.  Any fields to be left blank in the current row can be omitted from this section.

The format of the Value data depends on the type of field. See the Fields section above for details.

QuoteOptionDefinition  
  When importing transactions into a multi-quote workflow, the code for a suitable quote option must be provided.
InsuredValue  
  • Amount
(optional) Insert the insured value for the policy. This value is independent from the values input into the workflow fields, and is used for reports, documents, and e-mails.
GeneralInsuringConditions  
  The GeneralInsuringConditions section, including its opening and closing tags <GeneralInsuringConditions></GeneralInsuringConditions>, must be repeated for each distinct condition text.
  • Text
(optional) Insert the text for the insuring conditions.
  • Sequence
(optional) If more than one block of insuring conditions are being included, insert the sequence number to determine the order in which they are displayed.
CurrencyISO  
  • Code

Insert the three-character ISO currency code to apply to the premiums.  The provided currency must be configured in the associated master cover or the import will result in an error.  Any triggers associated to the currency configurations will not be evaluated.

If the master cover only has one currency configured, this node can be omitted and that currency will be assigned by default.  If the master cover has more than one currency configured, this node must be provided or the import will result in an error.

Currencies can be applied for New Business transactions, and can be changed for Renewal transactions.  The currency cannot be changed with update imports for existing policies.

Coverages  
  • Coverage
The Coverage section, including its opening and closing tags <Coverage></Coverage>, must be repeated for each premium type used in the policy.
  • CoverageType
(required) Insert the Code of the premium type.
Premiums  
  • ProratedAmount
Represents the final premium, prorated as part of the full term.  Since the new business transaction is always the full term, this value should be the same as the TermAmount below.
  • Amount
(required) Insert the prorated premium amount.
  • TermAmount
Represents the total premium for the full term, without prorating. Since the new business transaction is always the full term, this value should be the same as the ProratedAmount above.
  • Amount
(required) Insert the term premium amount.
  • AnnualAmount
Represents the total premium for a full year, without prorating. If the term equals a full year, this value should be the same as the TermAmount above.
  • Amount
(required) Insert the annual premium amount.
  • NetChangeAmount
Represents the total premium for the transaction. Since the new business transaction is always the full term, this value should be the same as the TermAmount above.
  • Amount
(required) Insert the premium amount.
  • Taxes
This section lists all taxes applied to the current premium type. If no taxes are applicable, this section can be left out.
  • Tax

The Tax section, including its opening and closing tags <Tax></Tax>, must be repeated for each separate tax applied to the current premium type.

(optional) Insert the Code for the tax type.

  • Amount
(optional) Insert the Amount for this tax type applied to the current premium type.
  • Commissions
This section contains the commission amount for the current premium type. If no commission is applicable, this section can be left out.
  • Distributor
(optional) Insert the Code and Id of the distributor to whom the commission is to be paid.
  • Amount
(optional) Insert the Amount of the commission. This amount should be included in the premium totals for the current premium type.
Limits  
  • Limit
The Limit section, including its opening and closing tags <Limit></Limit>, must be repeated for each limit applied to the current premium type.
  • LimitType
(optional) Insert the code for the limit type.
  • Description
(optional) Insert the Description of the limit.
  • Amount
(optional) Insert the Amount of the limit.
Deductibles  
  • Deductible
The Deductible section, including its opening and closing tags <Deductible></Deductible>, must be repeated for each deductible applied to the current premium type.
  • DeductibleType
(optional) Insert the code for the deductible type.
  • Description
(optional) Insert the Description of the deductible.
  • Amount
(optional) Insert the Amount of the deductible.

Distributor Import XML Sample

Distributor Import Template

The sample XML below is available in the file linked above. All black text must be replaced by the appropriate policy details, except where instructed otherwise.

Note: Some XML editors may display the code using different color markers.  Refer to the sample below to resolve any discrepancies.

The structure should only be changed where the instructions advise that sections should be copied and pasted to insert repetitive details.  Links to the instructions for each section are included at the far right, and each set of instructions has a link to return to the same section in the code.

<?xml version="1.0"?>

<Distributors>

  <Distributor Code="Distributor_20130610_001" xmlns="http://oceanwide.bridge.com">

     <PartyInfo>

        <PrimaryRole Code="Distributor">Distributor</PrimaryRole>

        <AddressInfo>

           <Address>Street Address</Address>

           <City>City</City>

           <State Code="Code"/>

           <Country Code="Code"/>

           <Zip>Zip/Postal Code</Zip>

        </AddressInfo>

        <CommunicationInfo>

           <Phone>Number</Phone>

           <Fax>Number</Fax>

           <Email>Email Address</Email>

           <Website>Website URL</Website>

        </CommunicationInfo>

     </PartyInfo>

     <CompanyInfo>

        <CompanyName>Name</CompanyName>

     </CompanyInfo>

     <DistributorInfo>

        <CommissionPercentage>Percentage</CommissionPercentage>

     </DistributorInfo>

  </Distributor>

</Distributors>

Distributor Import XML Details

Distributor  
 

The Distributor section, including its opening and closing tags <Deductible></Distributor>, contains all of the information for one distributor. The entire section can be repeated as many times as necessary to upload multiple distributors.

(required) Insert the Code to identify the distributor. The code must be unique when importing a new distributor. If a distributor exists in the system with the same code, that distributor will be updated with the provided information.

  • PrimaryRole
(optional) Both the Code and the value for this line should be Distributor.
AddressInfo  
  • Address
(optional) Insert the street address for the distributor.
  • City
(optional) Insert the city name for the distributor.
  • State
(optional) Insert the state Code for the distributor.
  • Country
(optional) Insert the country Code for the distributor.
  • Zip
(optional) Insert the Zip Code or Postal Code for the distributor.
CommunicationInfo  
  • Phone
(optional) Insert the phone number for the distributor.
  • Fax
(optional) Insert the fax number for the distributor.
  • Email
(optional) Insert the email address for the distributor.
  • Website
(optional) Insert the URL for the distributor's website.
CompanyInfo  
  • CompanyName
(required) Insert the name of the distributor company.
DistributorInfo  
  • CommissionPercentage
(optional) Insert the default commission percentage earned by this distributor.